The electronic collection of data at high speeds presents problems in many environments. For example, when clinical data is collected from a patient through a patient monitor vast amounts of data can be collected during a short interval. A computer system typically stores this data in computer memory for later processing. The computer memory is a limited resource that can quickly fill up with the collected data.
To reduce the memory requirements of collected data, some computer systems compress the data before storing it in the computer memory. When the collected data is needed for processing, the computer system decompresses the data. Thus, while the data is not needed, the memory requirements are minimized.
Many compression and decompression methods are known. Various methods have a variety of advantages. For example, some methods generate a large reduction in data size. Other methods preserve all the original data through the compression and decompression process. These methods are referred to as being lossless, because no data is lost. Other methods compress data very quickly or decompress data very quickly. These various methods also have a variety disadvantages. For example, some methods do not generate a large reduction in data size. Other methods do not preserve all the original data through the compression and decompression process, that is, the decompressed data is only an approximation of the original data. Also, some methods compress or decompress slowly. Some methods use considerable computer memory when compressing or decompressing.
It would be desirable to have a compression and decompression method in which data can be compressed and decompressed in real-time, in which a significant reduction in data size is achieved, in which the a small amount of computer memory is need for the compression and decompression method, and in which no data is lost.